/*
 * Copyright (C) 2015 yixun All Rights Reserved.
 * 
 * CustomerPremises.java
 */
package com.yixun.qfbao.xf.model;

import com.alibaba.fastjson.annotation.JSONField;
import com.yixun.qfbao.xf.model.enums.*;
import io.swagger.annotations.ApiModelProperty;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.util.StringUtils;

import java.io.Serializable;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;

public class CustomerPremises implements Serializable {
	private static Logger logger= LoggerFactory.getLogger(CustomerPremises.class);
	/**
	 * 序列化UID
	 */
	private static final long serialVersionUID = 1L;
	
	/**
	 * 流水号
	 */
	private Long id;
	
	/**
	 * 报备人
	 */
	@ApiModelProperty("报备人Id")
	private Long staffId;
	
	/**
	 * 报备人所属公司
	 */
	@ApiModelProperty("报备分销公司ID")
	private Long staffCompanyId;

	public Long getStaffCompanyId() {
		return staffCompanyId;
	}

	public void setStaffCompanyId(Long staffCompanyId) {
		this.staffCompanyId = staffCompanyId;
	}

	/**
	 * 报备楼盘
	 */
	@ApiModelProperty("报备楼盘Id")
	private Long premisesId;

	@ApiModelProperty("客户Id")
	private Long customerId;

	@ApiModelProperty("报备电话")
	private String reportPhone;
	
	/**
	 * 创建时间
	 */
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	private Date createTime;

	/**
	 * 更新时间
	 */
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	private Date updateTime;

	/**
	 * 手机号码
	 */
	@ApiModelProperty("客户电话")
	private String mobile;
	
	/**
	 * 姓名
	 */
	@ApiModelProperty("客户姓名")
	private String name;
	
	/**
	 * 性别:[{key:gender,values:[{no:0,alias:confirm,remark:男},{no:1,alias:dis_confirm,remark:女}]}]
	 */
	@ApiModelProperty("性别")
	private String gender;
	
	/**
	 * 邮箱地址
	 */
	private String email;
	
	/**
	 * 交易状态: 0: 待定、1: 认筹、 2: 认购、 3: 签约
	 */
	@ApiModelProperty("交易状态: 0: 待定、1: 认筹、 2: 认购、 3: 签约")
	private String confirmStatus;
	
	/**
	 * 客户状态:[{key:customer_status,values:[{no:0,alias:normal,remark:报备未确认},{no:1,alias:valid,remark:报备有效},{no:2,alias:
	 * has_visited,remark:已到访},{no:3,paid_in,remark:已缴定},{no:4,alias:has_balance,remark:已结佣},{no:5,alias:no_valid,remark
	 * :报备无效}]}]
	 */
	@ApiModelProperty("客户状态: 0: 待确认、6: 已到访、 10: 未到访、 -1: 无效报备")
	private String customerStatus;
	
	/**
	 * 备注
	 */
	private String remark;
	
	/**
	 * 性别名称
	 */
	private String genderName;
	
	/**
	 * 认筹状态名称
	 */
	@ApiModelProperty("交易状态名称")
	private String confirmStatusName;
	
	/**
	 * 客户状态名称
	 */
	@ApiModelProperty("客户状态名称")
	private String customerStatusName;
	
	/**
	 * 按揭状态名称
	 */
	private String mortgageStatusName;
	
	/**
	 * 报备人所属公司
	 */
	private Long companyId;
	
	/**
	 * 案场人员ID
	 */
	private Long partnerId;
	
	/**
	 * 佣金
	 */
	private String commission;
	
	/**
	 * 最后跟进时间
	 */
	private Date lastFollowUpTime;
	/**
	 * 跟进创建时间
	 */
	private Date followCreateTime;
	
	/**
	 * 带看奖
	 */
	@ApiModelProperty("带看奖")
	private BigDecimal reward;
	
	/**
	 * 是否已转客 (0 未转 1 已转)
	 */
	@ApiModelProperty("是否已转客")
	private String isToM2;
	
	/**
	 * 是否删除 (0 否 1 是)
	 */
	private String delFlag;
	
	/**
	 * 对接人id
	 */
	private Long principalId;
	
	/**
	 * 无效类型(1-报备无效，2-到访无效，3-已过到访保护期)
	 */
	private String disableType;
	
	/**
	 * 佣金状态(1-已结佣，2-待结佣，3-部分结佣)
	 */
	private String commissionStatus;
	
	/**
	 * 计价面积
	 */
	private BigDecimal valuationArea;
	
	/**
	 * 成交总额
	 */
	@ApiModelProperty("成交总额")
	private BigDecimal dealAmount;
	
	/**
	 * 佣金表id
	 */
	private Long commissionId;
	/**
	 * 1-表示为M2同步楼盘，0不是
	 */
	private String projectCodeM2;
	
	private BigDecimal firstPayment;
	
	private String payFinish ;
	
	private String firstPaymentRatio;

    /**
     * 到访时间
     */
	@ApiModelProperty("到访时间")
	private Date visitTime;
    /**
     * 认筹时间
     */
	@ApiModelProperty("认筹时间")
	private Date payDepositTime;
    /**
     * 认购时间
     */
	@ApiModelProperty("认购时间")
	private Date subscribeTime;
    /**
     * 签约时间
     */
	@ApiModelProperty("签约时间")
	private Date signTime;
    /**
     * 交易失败时间
     */
	@ApiModelProperty("交易失败时间")
	private Date dealFailTime;

	/**
	 * 认购金
	 */
	private BigDecimal signatureAmount;

	private String recommenderUuid;

	/**
	* 置业顾问
	*/
	private String adviserUuid;

	/**
	 * 到访次数
	 */
	@ApiModelProperty("到访次数")
	private String visitState;

	/**
	 * 号码验真
	 */
	@ApiModelProperty("号码验真")
	private String mobileCheck;

	/**
	 * 最后验真时间
	 */
	@ApiModelProperty("最后验真时间")
	private Date lastCheckTime;

	/**
	 * 成交客户名称
	 */
	@ApiModelProperty("成交客户名称")
	private String dealClientName;

	public String getVisitState() {
		return visitState;
	}

	public void setVisitState(String visitState) {
		this.visitState = visitState;
	}

	public String getReportPhone() {
		return reportPhone;
	}

	public void setReportPhone(String reportPhone) {
		this.reportPhone = reportPhone;
	}

	public Date getVisitTime() {
        return visitTime;
    }

    public void setVisitTime(Date visitTime) {
        this.visitTime = visitTime;
    }

    public Date getPayDepositTime() {
        return payDepositTime;
    }

    public void setPayDepositTime(Date payDepositTime) {
        this.payDepositTime = payDepositTime;
    }

    public Date getSubscribeTime() {
        return subscribeTime;
    }

    public void setSubscribeTime(Date subscribeTime) {
        this.subscribeTime = subscribeTime;
    }

    public Date getSignTime() {
        return signTime;
    }

    public void setSignTime(Date signTime) {
        this.signTime = signTime;
    }

    public Date getDealFailTime() {
        return dealFailTime;
    }

    public void setDealFailTime(Date dealFailTime) {
        this.dealFailTime = dealFailTime;
    }

    public String getProjectCodeM2() {
		return projectCodeM2;
	}

	public void setProjectCodeM2(String projectCodeM2) {
		this.projectCodeM2 = projectCodeM2;
	}

	public Long getCommissionId() {
		return commissionId;
	}

	public void setCommissionId(Long commissionId) {
		this.commissionId = commissionId;
	}

	public BigDecimal getValuationArea() {
		return valuationArea;
	}

	public void setValuationArea(BigDecimal valuationArea) {
		this.valuationArea = valuationArea;
	}

	public BigDecimal getDealAmount() {
		return dealAmount;
	}

	public void setDealAmount(BigDecimal dealAmount) {
		this.dealAmount = dealAmount;
	}

	public String getDisableType() {
		return disableType;
	}

	public void setDisableType(String disableType) {
		this.disableType = disableType;
	}

	public String getCommissionStatus() {
		return commissionStatus;
	}

	public void setCommissionStatus(String commissionStatus) {
		this.commissionStatus = commissionStatus;
	}

	public Long getPrincipalId() {
		return principalId;
	}

	public void setPrincipalId(Long principalId) {
		this.principalId = principalId;
	}

	public String getDelFlag() {
		return delFlag;
	}

	public void setDelFlag(String delFlag) {
		this.delFlag = delFlag;
	}

	public BigDecimal getReward() {
		return reward;
	}

	public void setReward(BigDecimal reward) {
		this.reward = reward;
	}
	
	/**
	 * 最后跟进时间
	 */
	private String formarLastFollowUpTime;
	
	private String formatCreateTime;
	
	/**
	 * 楼盘来源1:一手房源 2:海外房源
	 */
	private String premisesSource;
	
	public Long getPartnerId() {
		return partnerId;
	}
	
	public void setPartnerId(Long partnerId) {
		this.partnerId = partnerId;
	}
	
	public String getCommission() {
		return commission;
	}
	
	public void setCommission(String commission) {
		this.commission = commission;
	}
	
	public Long getCompanyId() {
		return companyId;
	}
	
	public void setCompanyId(Long companyId) {
		this.companyId = companyId;
	}
	
	private String clientSource;
	
	// 报备公司名称
	private String staffCompanyName;
	
	// 报备人电话
	private String staffPhone;
	
	// 开发商名称
	private String devCompanyName;
	
	// 楼盘名称
	private String premisesName;

	// 楼盘开关
	private String checkSwitch;

	// 号码补全节点
	private String completeNode;
	
	// 结佣方式
	private String commissionWay;
	
	// 结佣方式名称
	private String commissionWayName;
	
	// 用于判断佣金是否显示，为1时就会显示0，去除原有逻辑
	private String commissionIsShow;
	
	// 结佣操作人id
	private Long knotCommissionUserId;
	
	// 结佣日期
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	private Date knotCommissionDate;
	
	// 备注(用于手动输入佣金)
	private String commissionReason;
	
	// 规则id
	private Long rulesId;
	
	public Long getKnotCommissionUserId() {
		return knotCommissionUserId;
	}
	
	public void setKnotCommissionUserId(Long knotCommissionUserId) {
		this.knotCommissionUserId = knotCommissionUserId;
	}
	
	public Date getKnotCommissionDate() {
		return knotCommissionDate;
	}
	
	public void setKnotCommissionDate(Date knotCommissionDate) {
		this.knotCommissionDate = knotCommissionDate;
	}
	
	public String getCommissionReason() {
		return commissionReason;
	}
	
	public void setCommissionReason(String commissionReason) {
		this.commissionReason = commissionReason;
	}
	
	public Long getRulesId() {
		return rulesId;
	}
	
	public void setRulesId(Long rulesId) {
		this.rulesId = rulesId;
	}
	
	public String getCommissionIsShow() {
		return commissionIsShow;
	}
	
	public void setCommissionIsShow(String commissionIsShow) {
		this.commissionIsShow = commissionIsShow;
	}
	
	private String cardNumber;
	
	private List<Long> companyIds;
	
	private String ids;
	
	public String getIds() {
		return ids;
	}
	
	public void setIds(String ids) {
		this.ids = ids;
	}
	
	public String getCardNumber() {
		return cardNumber;
	}
	
	public void setCardNumber(String cardNumber) {
		this.cardNumber = cardNumber;
	}
	
	public String getClientSource() {
		return clientSource;
	}
	
	public void setClientSource(String clientSource) {
		this.clientSource = clientSource;
	}
	
	private List<FollowUpList> followUpList;
	
	public List<FollowUpList> getFollowUpList() {
		return followUpList;
	}
	
	public void setFollowUpList(List<FollowUpList> followUpList) {
		this.followUpList = followUpList;
	}
	
	public void setId(Long id) {
		this.id = id;
	}
	
	public Long getId() {
		return this.id;
	}
	
	public void setStaffId(Long staffId) {
		this.staffId = staffId;
	}
	
	public Long getStaffId() {
		return this.staffId;
	}
	
	public void setPremisesId(Long premisesId) {
		this.premisesId = premisesId;
	}
	
	public Long getPremisesId() {
		return this.premisesId;
	}

	public Long getCustomerId() {
		return customerId;
	}

	public void setCustomerId(Long customerId) {
		this.customerId = customerId;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}
	
	public Date getCreateTime() {
		return this.createTime;
	}
	
	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}
	
	public Date getUpdateTime() {
		return this.updateTime;
	}
	
	public void setMobile(String mobile) {
		this.mobile = mobile;
	}
	
	public String getMobile() {
		return this.mobile;
	}
	
	public void setName(String name) {
		this.name = name;
	}
	
	public String getName() {
		return this.name;
	}
	
	public void setGender(String gender) {
		this.gender = gender;
	}
	
	public String getGender() {
		return this.gender;
	}
	
	public void setEmail(String email) {
		this.email = email;
	}
	
	public String getEmail() {
		return this.email;
	}
	
	public void setConfirmStatus(String confirmStatus) {
		this.confirmStatus = confirmStatus;
	}
	
	public String getConfirmStatus() {
		return this.confirmStatus;
	}
	
	public void setCustomerStatus(String customerStatus) {
		this.customerStatus = customerStatus;
	}
	
	public String getCustomerStatus() {
		return this.customerStatus;
	}
	
	public void setRemark(String remark) {
		this.remark = remark;
	}
	
	public String getRemark() {
		return this.remark;
	}
	
	public String getGenderName() {
		try {
			return StringUtils.isEmpty(gender)  ? "" : GenderEnum.getByNo(gender).getDes();
		} catch (Exception e) {
			// TODO Auto-generated catch block
			logger.error("isExistsInM2 ==> error: {}",e);
		}
		return "";
	}
	
	public void setGenderName(String genderName) {
		this.genderName = genderName;
	}
	
	public String getConfirmStatusName() {
		if(confirmStatus==null) {
			return "";
		}
		else if(ConfirmStatusEnum.getByNo(confirmStatus)==null) {
			return "";
		}
		else if(ConfirmStatusEnum.sign_fail.getNo().equals(confirmStatus)&&disableType!=null) {
			return DisableTypeEnum.getDescByNo(disableType);
		}
		else {
			return ConfirmStatusEnum.getByNo(confirmStatus).getDes();
		}
	}
	
	public void setConfirmStatusName(String confirmStatusName) {
		this.confirmStatusName = confirmStatusName;
	}
	
	public String getCustomerStatusName() {
		if (customerStatus==null) {
			return "";
		}
		else if(CustomerStatusEnum.getByNo(customerStatus)==null) {
			return "";
		}else if(CustomerStatusEnum.no_valid.getNo().equals(customerStatus)&&disableType!=null) {
			return DisableTypeEnum.getDescByNo(disableType);
		}else{
			return CustomerStatusEnum.getByNo(customerStatus).getDes();
		}
	}
	
	public void setCustomerStatusName(String customerStatusName) {
		this.customerStatusName = customerStatusName;
	}
	
	public String getMortgageStatusName() {
		try {
			return mortgageStatusName == null ? ""
				: MortgageStatusEnum.getByNo(mortgageStatus) == null ? "" : MortgageStatusEnum.getByNo(mortgageStatus).getDes();
		} catch (Exception e) {
			logger.error("isExistsInM2 ==> error: {}",e);
		}
		return "";
	}
	
	public void setMortgageStatusName(String mortgageStatusName) {
		this.mortgageStatusName = mortgageStatusName;
	}
	
	public String getPremisesName() {
		return premisesName;
	}
	
	public void setPremisesName(String premisesName) {
		this.premisesName = premisesName;
	}

	public String getCheckSwitch() {
		return checkSwitch;
	}

	public void setCheckSwitch(String checkSwitch) {
		this.checkSwitch = checkSwitch;
	}

	public String getCompleteNode() {
		return completeNode;
	}

	public void setCompleteNode(String completeNode) {
		this.completeNode = completeNode;
	}

	public Date getLastFollowUpTime() {
		return lastFollowUpTime;
	}
	
	public void setLastFollowUpTime(Date lastFollowUpTime) {
		this.lastFollowUpTime = lastFollowUpTime;
	}
	
	public String getFormarLastFollowUpTime() {
		SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		return lastFollowUpTime == null ? "" : dateFormat.format(lastFollowUpTime);
	}
	
	public void setFormarLastFollowUpTime(String formarLastFollowUpTime) {
		this.formarLastFollowUpTime = formarLastFollowUpTime;
	}

    public Date getFollowCreateTime() {
        return followCreateTime;
    }

    public void setFollowCreateTime(Date followCreateTime) {
        this.followCreateTime = followCreateTime;
    }

    public String getPremisesSource() {
		return premisesSource;
	}
	
	public void setPremisesSource(String premisesSource) {
		this.premisesSource = premisesSource;
	}
	
	public String getFormatCreateTime() {
		SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		return createTime == null ? "" : dateFormat.format(createTime);
	}
	
	public void setFormatCreateTime(String formatCreateTime) {
		this.formatCreateTime = formatCreateTime;
	}
	
	public String getStaffPhone() {
		return staffPhone;
	}
	
	public void setStaffPhone(String staffPhone) {
		this.staffPhone = staffPhone;
	}

	public String getStaffCompanyName() {
		return staffCompanyName;
	}

	public void setStaffCompanyName(String staffCompanyName) {
		this.staffCompanyName = staffCompanyName;
	}

	public String getDevCompanyName() {
		return devCompanyName;
	}

	public void setDevCompanyName(String devCompanyName) {
		this.devCompanyName = devCompanyName;
	}

	public List<Long> getCompanyIds() {
		return companyIds;
	}

	public void setCompanyIds(List<Long> companyIds) {
		this.companyIds = companyIds;
	}

	// 佣金金额
	private String commissionAmount;
	
	// 分佣比例
	private String domesticProportion;
	
	// 发起申诉次数
	private Long complaintsNumber;
	
	// 重新发起次数
	private Long afreshNum;
	
	public Long getAfreshNum() {
		return afreshNum;
	}
	
	public void setAfreshNum(Long afreshNum) {
		this.afreshNum = afreshNum;
	}
	
	// 报备保护期
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	private Date reportPeriodTime;

	// 报备有效时间
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	private Date reportValidTime;
	
	// 带看保护期
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	private Date lookPeriodTime;
	
	// 申诉时间
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	private Date appealTime;
	
	// 申诉理由
	private String appealReason;
	
	// 处理状态:[{key:confirm_status,values:[{no:1,alias:pending,remark:待处理},{no:2,alias:toEffectiveReporting,remark:转为有效报备},{no:3,alias:fail,remark:不通过}]}]
	private String processStatus;
	
	// 处理备注
	private String processRemark;
	
	// 客户状态名称
	private String processStatusName;
	
	// 报备状态
	private String cusNewStatusName;
	
	// 楼栋名称
	private String buildingName;
	
	// 房间名称
	private String roomName;
	
	// 报备类型 1、普通报备,2、特殊报备
	private String reportType;
	
	// 经度
	private String longitude;
	
	// 纬度
	private String latitude;
	
	// 带看保护时间
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	private Date visitProtectTime;

	// 到访保护时间
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	private Date visitBaohuTime;
	
	// 期望带看时间
	@JSONField(format = "yyyy-MM-dd HH:mm")
	private Date hopeVisitTime;
	
	// 期望带看未带看过期短信
	// 消息未发: 0, 消息已发: 1
	private String hopeVisitMsg;
	
	// 到访保护时间
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	private Date visitPastTime;
	
	// 到访保护期过期消息
	// 消息未发: 0, 消息已发: 1
	private String visitPastMsg;
	
	// 是否处于带看保护中
	private boolean visitProtecting;
	
	// 带看保护时间
	private String visitProtecDate;
	
	// 按揭状态
	// 1、按揭未发放 2、按揭已发放 9、无需按揭
	private String mortgageStatus;
	
	// 直接签约 1: 是
	private String directSign;
	
	// 案场人员姓名
	private String partnerName;
	
	// 案场人员电话
	private String partnerPhone;
	
	// 报备人姓名（或为经纪人）
	private String staffName;
	
	// 对接人姓名
	private String principal;
	
	// 当前用户报备状态
	private String currentStatus;

	// 合作机构总佣金
	private BigDecimal agentCommission;

	// 合作机构已结佣金
	private BigDecimal agentReceivedCommission;

	// 合作机构待结佣金
	private BigDecimal agentPendingCommission;

	//合作机构佣金状态:0:待结佣，1：完成结佣，2：部分结佣
	private String agentCommissionStatus;

	public BigDecimal getAgentCommission() {
		return agentCommission;
	}

	public void setAgentCommission(BigDecimal agentCommission) {
		this.agentCommission = agentCommission;
	}

	public BigDecimal getAgentReceivedCommission() {
		return agentReceivedCommission;
	}

	public void setAgentReceivedCommission(BigDecimal agentReceivedCommission) {
		this.agentReceivedCommission = agentReceivedCommission;
	}

	public BigDecimal getAgentPendingCommission() {
		return agentPendingCommission;
	}

	public void setAgentPendingCommission(BigDecimal agentPendingCommission) {
		this.agentPendingCommission = agentPendingCommission;
	}

	public String getAgentCommissionStatus() {
		return agentCommissionStatus;
	}

	public void setAgentCommissionStatus(String agentCommissionStatus) {
		this.agentCommissionStatus = agentCommissionStatus;
	}

	public String getCurrentStatus() {
		return currentStatus;
	}
	
	public void setCurrentStatus(String currentStatus) {
		this.currentStatus = currentStatus;
	}
	
	public String getCommissionAmount() {
		return commissionAmount;
	}
	
	public void setCommissionAmount(String commissionAmount) {
		this.commissionAmount = commissionAmount;
	}
	
	public String getDomesticProportion() {
		return domesticProportion;
	}
	
	public void setDomesticProportion(String domesticProportion) {
		this.domesticProportion = domesticProportion;
	}
	
	public Long getComplaintsNumber() {
		return complaintsNumber;
	}
	
	public void setComplaintsNumber(Long complaintsNumber) {
		this.complaintsNumber = complaintsNumber;
	}
	
	public Date getReportPeriodTime() {
		return reportPeriodTime;
	}
	
	public void setReportPeriodTime(Date reportPeriodTime) {
		this.reportPeriodTime = reportPeriodTime;
	}

	public Date getReportValidTime() {
		return reportValidTime;
	}

	public void setReportValidTime(Date reportValidTime) {
		this.reportValidTime = reportValidTime;
	}

	public Date getLookPeriodTime() {
		return lookPeriodTime;
	}
	
	public void setLookPeriodTime(Date lookPeriodTime) {
		this.lookPeriodTime = lookPeriodTime;
	}
	
	public Date getAppealTime() {
		return appealTime;
	}
	
	public void setAppealTime(Date appealTime) {
		this.appealTime = appealTime;
	}
	
	public String getAppealReason() {
		return appealReason;
	}
	
	public void setAppealReason(String appealReason) {
		this.appealReason = appealReason;
	}
	
	public String getProcessStatus() {
		return processStatus;
	}
	
	public void setProcessStatus(String processStatus) {
		this.processStatus = processStatus;
	}
	
	public String getProcessRemark() {
		return processRemark;
	}
	
	public void setProcessRemark(String processRemark) {
		this.processRemark = processRemark;
	}
	
	public String getProcessStatusName() {
		try {
			if (StringUtils.isEmpty(processStatus)) {
				return "";
			} else if (StringUtils.isEmpty(ProcessStatusEnum.getByNo(processStatus))){
				return "";
			} else {
				return ProcessStatusEnum.getByNo(processStatus).getDes();
			}
		} catch (Exception e) {
			logger.error("isExistsInM2 ==> error: {}", e);
			return "";
		}
	}
	
	public void setProcessStatusName(String processStatusName) {
		this.processStatusName = processStatusName;
	}
	
	public String getCusNewStatusName() {
		return cusNewStatusName;
	}
	
	public void setCusNewStatusName(String cusNewStatusName) {
		this.cusNewStatusName = cusNewStatusName;
	}
	
	private String isDist;
	
	public String getIsDist() {
		return isDist;
	}
	
	public void setIsDist(String isDist) {
		this.isDist = isDist;
	}
	
	public String getBuildingName() {
		return buildingName;
	}
	
	public void setBuildingName(String buildingName) {
		this.buildingName = buildingName;
	}
	
	public String getRoomName() {
		return roomName;
	}
	
	public void setRoomName(String roomName) {
		this.roomName = roomName;
	}
	
	public String getReportType() {
		return reportType;
	}
	
	public void setReportType(String reportType) {
		this.reportType = reportType;
	}
	
	public String getLongitude() {
		return longitude;
	}
	
	public void setLongitude(String longitude) {
		this.longitude = longitude;
	}
	
	public String getLatitude() {
		return latitude;
	}
	
	public void setLatitude(String latitude) {
		this.latitude = latitude;
	}
	
	public Date getVisitProtectTime() {
		return visitProtectTime;
	}
	
	public void setVisitProtectTime(Date visitProtectTime) {
		this.visitProtectTime = visitProtectTime;
	}

	public Date getVisitBaohuTime() {
		return visitBaohuTime;
	}

	public void setVisitBaohuTime(Date visitBaohuTime) {
		this.visitBaohuTime = visitBaohuTime;
	}

	public Date getHopeVisitTime() {
		return hopeVisitTime;
	}
	
	public void setHopeVisitTime(Date hopeVisitTime) {
		this.hopeVisitTime = hopeVisitTime;
	}
	
	public String getHopeVisitMsg() {
		return hopeVisitMsg;
	}
	
	public void setHopeVisitMsg(String hopeVisitMsg) {
		this.hopeVisitMsg = hopeVisitMsg;
	}
	
	public Date getVisitPastTime() {
		return visitPastTime;
	}
	
	public void setVisitPastTime(Date visitPastTime) {
		this.visitPastTime = visitPastTime;
	}
	
	public String getVisitPastMsg() {
		return visitPastMsg;
	}
	
	public void setVisitPastMsg(String visitPastMsg) {
		this.visitPastMsg = visitPastMsg;
	}
	
	public boolean isVisitProtecting() {
		return visitProtecting;
	}
	
	public void setVisitProtecting(boolean visitProtecting) {
		this.visitProtecting = visitProtecting;
	}
	
	public String getVisitProtecDate() {
		return visitProtecDate;
	}
	
	public void setVisitProtecDate(String visitProtecDate) {
		this.visitProtecDate = visitProtecDate;
	}
	
	public String getMortgageStatus() {
		return mortgageStatus;
	}
	
	public void setMortgageStatus(String mortgageStatus) {
		this.mortgageStatus = mortgageStatus;
	}
	
	public String getCommissionWay() {
		return commissionWay;
	}
	
	public void setCommissionWay(String commissionWay) {
		this.commissionWay = commissionWay;
	}
	
	public String getCommissionWayName() {
		return commissionWayName;
	}
	
	public void setCommissionWayName(String commissionWayName) {
		this.commissionWayName = commissionWayName;
	}
	
	public String getDirectSign() {
		return directSign;
	}
	
	public void setDirectSign(String directSign) {
		this.directSign = directSign;
	}
	
	public String getIsToM2() {
		return isToM2;
	}
	
	public void setIsToM2(String isToM2) {
		this.isToM2 = isToM2;
	}
	
	public String getPartnerName() {
		return partnerName;
	}
	
	public void setPartnerName(String partnerName) {
		this.partnerName = partnerName;
	}
	
	public String getStaffName() {
		return staffName;
	}
	
	public void setStaffName(String staffName) {
		this.staffName = staffName;
	}
	
	public String getPartnerPhone() {
		return partnerPhone;
	}
	
	public void setPartnerPhone(String partnerPhone) {
		this.partnerPhone = partnerPhone;
	}
	
	public String getPrincipal() {
		return principal;
	}
	
	public void setPrincipal(String principal) {
		this.principal = principal;
	}

	public BigDecimal getFirstPayment() {
		return firstPayment;
	}

	public void setFirstPayment(BigDecimal firstPayment) {
		this.firstPayment = firstPayment;
	}

	public String getPayFinish() {
		return payFinish;
	}

	public void setPayFinish(String payFinish) {
		this.payFinish = payFinish;
	}

	public String getFirstPaymentRatio() {
		return firstPaymentRatio;
	}

	public void setFirstPaymentRatio(String firstPaymentRatio) {
		this.firstPaymentRatio = firstPaymentRatio;
	}

	public BigDecimal getSignatureAmount() {
		return signatureAmount;
	}

	public void setSignatureAmount(BigDecimal signatureAmount) {
		this.signatureAmount = signatureAmount;
	}

	public String getRecommenderUuid() {
		return recommenderUuid;
	}

	public void setRecommenderUuid(String recommenderUuid) {
		this.recommenderUuid = recommenderUuid;
	}

	public String getAdviserUuid() {
		return adviserUuid;
	}

	public void setAdviserUuid(String adviserUuid) {
		this.adviserUuid = adviserUuid;
	}

	private Boolean mobileHidden;
	public Boolean getMobileHidden() {
		return mobileHidden;
	}

	public void setMobileHidden(Boolean mobileHidden) {
		this.mobileHidden = mobileHidden;
	}

	public String getMobileCheck() {
		return mobileCheck;
	}

	public void setMobileCheck(String mobileCheck) {
		this.mobileCheck = mobileCheck;
	}

	public Date getLastCheckTime() {
		return lastCheckTime;
	}

	public void setLastCheckTime(Date lastCheckTime) {
		this.lastCheckTime = lastCheckTime;
	}

	public String getDealClientName() {
		return dealClientName;
	}

	public void setDealClientName(String dealClientName) {
		this.dealClientName = dealClientName;
	}
}
